package org.jeecg.modules.foc;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

@Data
public class FocSpaceTreeDTO {

    /**
     * 前端要求字段
     */
    private  Boolean selectable =false;
    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "id")
    private java.lang.Integer id;
    /**全局ID*/
    @Excel(name = "全局ID", width = 15)
    @ApiModelProperty(value = "全局ID")
    private java.lang.String guid;
    /**路径标识*/
    @Excel(name = "路径标识", width = 15)
    @ApiModelProperty(value = "路径标识")
    private java.lang.String tag;
    /**绝对路径*/
    @Excel(name = "绝对路径", width = 15)
    @ApiModelProperty(value = "绝对路径")
    private java.lang.String path;
    /**空间中文名称*/
    @Excel(name = "空间中文名称", width = 15)
    @ApiModelProperty(value = "空间中文名称")
    private java.lang.String name;
    /**节点类型,1空间，2设备，3点位节点*/
    @Excel(name = "节点类型,1空间，2设备，3点位节点", width = 15)
    @ApiModelProperty(value = "节点类型,1空间，2设备，3点位节点")
    private java.lang.Integer nodeType;
    /**空间类型，包间  （分机房、楼宇、包间、监控室、高压室、低压室、
     电池室、空调间、冷冻站、水泵房等）。 */
    @Excel(name = "空间类型，包间  （分机房、楼宇、包间、监控室、高压室、低压室、 电池室、空调间、冷冻站、水泵房等）。 ", width = 15)
    @ApiModelProperty(value = "空间类型，包间  （分机房、楼宇、包间、监控室、高压室、低压室、 电池室、空调间、冷冻站、水泵房等）。 ")
    private java.lang.String spaceType;
    /**父节点的全局ID。根节点的父节点parent_guid设为“-1”*/
    @Excel(name = "父节点的全局ID。根节点的父节点parent_guid设为“-1”", width = 15)
    @ApiModelProperty(value = "父节点的全局ID。根节点的父节点parent_guid设为“-1”")
    private java.lang.String parentGuid;
    /**删除状态*/
    @Excel(name = "删除状态", width = 15)
    @ApiModelProperty(value = "删除状态")
    private java.lang.Integer delFlag;
    /**创建人*/
    @Excel(name = "创建人", width = 15)
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
    /**创建时间*/
    @Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
    /**更新人*/
    @Excel(name = "更新人", width = 15)
    @ApiModelProperty(value = "更新人")
    private java.lang.String updateBy;
    /**更新时间*/
    @Excel(name = "更新时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
    private java.util.Date updateTime;
    // c接口区域要求字段

    @ApiModelProperty(value = "主键, 区域编码，按照集团统一资源库模型编制")
    private java.lang.String areaid;
    @ApiModelProperty(value = "上级区域ID，如果不存在上级区域，则该LastAreaId为NULL，最大嵌套4级别")
    private java.lang.String lastareaid;
    @ApiModelProperty(value = "区域名称")
    private java.lang.String areaname;


    //c即可局站要求字段

    @Excel(name = "站点编号，主键，按照集团统一资源库模型编制", width = 15)
    @ApiModelProperty(value = "站点编号，主键，按照集团统一资源库模型编制")
    private java.lang.String siteid;

    @Excel(name = "站点名称", width = 15)
    @ApiModelProperty(value = "站点名称")
    private java.lang.String sitename;
    // c 机房要求
    @Excel(name = "机房编号，主键", width = 15)
    @ApiModelProperty(value = "机房编号，主键")
    private java.lang.String roomid;
    /**
     * 类型
     */
    private Integer type;
    /**设备类型*/
    @Excel(name = "设备类型", width = 15)
    @ApiModelProperty(value = "设备类型")
    private java.lang.String deviceType;
    /**上联设备guid。如有多个上联的，guid间用
     英文逗号,隔开 */
    @Excel(name = "上联设备guid。如有多个上联的，guid间用 英文逗号,隔开 ", width = 15)
    @ApiModelProperty(value = "上联设备guid。如有多个上联的，guid间用 英文逗号,隔开 ")
    private java.lang.String link;
    /**parentGuid*/

    @Excel(name = "映射设备类型", width = 15)
    @ApiModelProperty(value = "映射设备类型 ")
    private java.lang.String mpDeviceType;

    @Excel(name = "映射设备大类", width = 15)
    @ApiModelProperty(value = "映射设备大类 ")
    private java.lang.String mpBigType;
    /**
     * 设备生产厂商
     *
     */
    @Excel(name = "设备生产厂商", width = 15)
    @ApiModelProperty(value = "设备生产厂商")
    private java.lang.String productor;


    /**
     * c 接口要求字段
     */

    @Excel(name = "设备编号，主键", width = 15)
    @ApiModelProperty(value = "设备编号，主键")
    private java.lang.String deviceid;

    @Excel(name = "监控单元编号（监控单元表主键）", width = 15)
    @ApiModelProperty(value = "监控单元编号（监控单元表主键）")
    private java.lang.String suid;

    /**
     * 占站点名称
     */
    private String roomName;
    /**
     * 设备名称
     *
     */
    private java.lang.String deviceName;


    //设置子节点
    private java.util.List<FocSpaceTreeDTO> children;
}
